home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 5
/
Aminet 5 - March 1995.iso
/
Aminet
/
misc
/
amag
/
AM9409_2.lha
/
ARexxManager
/
ArexxManager.executable
/
ReadMe.dok.2.1
< prev
next >
Wrap
Text File
|
1994-07-28
|
18KB
|
377 lines
=========================================
|| ||
|| A r e x x M a n a g e r 2 . 1 ||
|| ||
=========================================
Autor: Karsten Wysocki
An der Mühle 3
38372 Büddenstedt
Entwicklungswerkzeug: ArexxManager
ArexxManager 2.1 ist ein Update zu ArexxManager.
Für Benutzer der vorherigen Version:
Beachten Sie Bitte die Änderungen und Ergänzungen:
ArexxShell: Beispiele und nachfolgende Absätze
ScriptManager: [Edit]
& [Launch]
& [VCopy] <- NEU!!!
ResourceManager: [Add Lib]
& [Libs] <- früher Show Libs
Weitere Änderungen zur Vorversion:
- Bessere Editiermöglichkeiten in der ArexxShell (wie in DOS-Shell).
- Die Datei-Requester des Script-Managers sind nicht mehr auf das
REXX:-Verzeichnis fixiert. Der ScriptManager merkt sich das zu-
letzt benutzte Verzeichnis und den Dateinamen.
- Die Launch-Funktion des ScriptManagers erzeugt nur noch dann ein
Ausgabefenster, wenn Fehler im Programm auftreten oder vom Pro-
gramm Ausgaben erzeugt werden.
- Neue Funktion in ScriptManager: [VCopy] (siehe Beschreibung)
- Die vom ResourceManager erzeugten Listen der Show-Funktionen wer-
den jetzt alphabetisch sortiert und lassen sich bei Überlänge Sei-
weise durchblättern. Die einzige Ausnahme ist die Funktion [Libs],
die Liste der Libraries wird in der Such-Reihenfolge für Funkti-
onsaufrufe ausgegeben.
- Code-Optimierung bei allen Komponenten des ArexxManagers
Einleitung:
===========
Der ArexxManager ist ein Werkzeug für angehende und professionelle
Arexx-Programmierer. ArexxManager ist ein komplett in Arexx program-
miertes und multitasking-fähiges Programmsystem. Es besteht aus drei
im multitasking laufenden Komponenten. Das Programm ArexxShell erzeugt
zwei Fenster, eins zu Ausgabe und eins zur Eingabe. Damit können inter-
aktiv Arexx-Kommandos und Library-Funktionen getestet werden. Mit dem
Programm ScriptManager können Arexx-Scripts verwaltet, bearbeitet und
getestet werden. Der ResourceManager ermöglicht es dem Arexx-Programmie-
rer die Arexx-Resourcen auf bequeme Art einzusehen und zu verwalten. Auch
die Arexx-Trace-Console (TCO, TCC) läßt sich hiermit aktivieren und de-
aktivieren. Das vierte Programm, ArexxManager, gibt dem Benutzer die Mög-
lichkeit alle drei System-Komponenten bequem gleichzeitig mit einem Mouse-
click zu starten. Die Programme können jedoch auch einzeln gestartet und
benutzt werden.
ArexxManager benutzt die rexxapp.library von Jeff Glatt (erhältlich z.B.
auf Fish-Disk 463) und die apig.library von Ronnie E. Kelly (erhältlich
z. B. auf Fish-Disk 634). Laut beiliegendem Text wird die apig.library
von Ronnie E. Kelly zu Public Domain erklärt und ist frei kopierbar und
benutzbar. Zur Veröffentlichung der rexxapp.library wurden keinerlei An-
gaben betreffs der Urheberrechte gemacht.
Systemvoraussetzungen:
======================
Um ArexxManager zu benutzen benötigen Sie System 2.x oder höher.
Arexx muß installiert sein. Das heißt, in der Startup-Sequence muß
der Arexx-Handler (RexxMast) gestartet werden, die Arexx-Programme im
REXXC-Verzeichnis des Systems müssen vorhanden sein und das Verzeichnis
muß als Pfad in der Startup-Sequence eingetragen sein (path sys:rexxc add),
die Arexx-Libraries (rexxsyslib.-, rexxsupport.- und rexxhost.library)
müssen sich im LIBS:-Verzeichnis befinden und es muß ein Verzeichnis für
Arexx-Scripts existieren, daß in der Startup-Sequence oder im User-Startup
als REXX: assigned sein muß (assign REXX: laufwerkname:pfad).
Installation:
=============
Schieben Sie die ArexxManager-Schublade von der Diskette in ein von Ihnen
gewünschtes Festplattenverzeichnis. Um bequem mit ArexxManager arbeiten zu
können, aktivieren Sie die ArexxMananger-Schublade im Festplattenverzeich-
nis und wählen dann in der Workbench-Titelleiste "Icons/Leave out". Nun ha-
ben Sie die ArexxManager-Schublade direkt auf der Workbench. Positionieren
Sie die Schublade und fixieren Sie sie dann mit "Icons/Snapshot". Öffnen
Sie nun die ArexxManager-Schublade und doppelklicken Sie das CopyLib-
Icon. Nun wird die von ArexxManager benötigte apig.library in Ihr LIBS:-
Verzeichnis kopiert.
Danach ist die Installation abgeschlossen.
Programmbeschreibungen:
=======================
ArexxManager:
-------------
Der ArexxManager dient zum gleichzeitigen Starten der einzelnen Programme
ArexxShell, ScriptManager und ResourceManager. Diese Komponenten können
jedoch auch einzeln über Ihr eigenes Icon gestartet und benutzt werden.
ArexxShell:
-----------
Die Benutzeroberfläche von ArexxShell besteht aus zwei Fenstern. Im Einga-
be fenster können Arexx-Kommandos und Funktionsaufrufe eingegeben werden.
Das Ergebnis erscheint dann im Ausgabefenster. Ausgegeben werden jeweils
das Ergebnis des Kommandos, die Adresse an die das Kommando geschickt wur-
de, der ReturnCode (RC) und das zurückgelieferte Resultat (RESULT). Im
Fehlerfall erscheint die entprechende Arexx-Fehlermeldung.
Eingaben, die in der ArexxShell fehlerfrei abgearbeitet wurden, können
Sie mit der gleichen Syntax in Ihrem Arexx-Programm-Code verwenden. Da-
durch eignet sich die ArexxShell besonders für angehende Arexx-Program-
mierer sehr gut zum Experimentieren.
Beispiele:
Eingabe: say "Hallo"
Ausgabe: Hallo
ADDRESS:REXX
RC:0 Result:
Eingabe: say show(files)
Ausgabe: STDOUT STDIN
ADDRESS:REXX
RC:0 Result:
Eingabe: say show(
Ausgabe: +++ Error 42 in Line 1: Unbalanced parentheses
Command returned 10/42: Unbalanced parentheses
rx failed returncode 10
Eingabe : address command dir
Ausgabe : ArexxManager2.1(dir)
apig.library ArexxManager2.1
ArexxManager2.1.info ArexxShell2.1
. .
. .
. .
ADDRESS:COMMAND
RC:0 RESULT:RESULT
Eingabe: address 'ScriptManager' 'DIE'
Diese Message veranlaßt den ScriptManager sich selbst
zu beenden und das ScriptManager-Fenster schließt sich.
Ausgabe: ADDRESS:'SCRIPTMANAGER'
RC:0 RESULT:RESULT
Starten des Echtzeitvideodigitzers VLab, danach:
Eingabe: address vlab
Ausgabe: ADDRESS:VLAB
RC:0 Result:
Eingabe: 'aslrequest "files"'
Daraufhin produziert VLab einen Datei-Requester,
nach Auswahl der Datei "Ram Disk:IFR.0006" aus dem Requester:
Ausgabe: ADDRESS:VLAB
RC:0 Result:Ram Disk:IFR.0006
Es ist auch möglich eine ganze Folge von Kommandos einzugeben. Dabei ver-
wendet man das Semikolon als Trennzeichen. Die Eingabe
address vlab;'aslrequest "files"'
ergibt dann das gleiche Ergebnis wie das obenstehende Beispiel. Anbei ein
kleiner Tip: Das Hochkomma (') verbirgt sich auf der deutschen Tastatur
unter Alt/Ä.
Fehlerhafte Eingaben können mit der Backspace- oder den Cursor- und der
Del-Taste korrigiert werden. Mit der Tasten Cursor-Up und Cursor-Down
können Sie Ihre letzten Eingaben zurückholen.
Verlassen können Sie die ArexxShell durch Eingabe von exit oder x.
Das Ausgabefenster schließt sich dann nach ca. 2 Sekunden automatisch.
ScriptManager:
--------------
Der ScriptManager dient zum Verwalten und Bearbeiten Ihrer Arexx-Scripts.
Alle Gadgets im ScriptManager erzeugen einen Datei-Requester. Erst nach
Auswahl einer Datei aus dem Requester wird die gewählte Funktion ausge-
führt. Bei Wahl von [Delete] (Löschen), erscheint nach der Auswahl von
Dateien zusätzlich ein Sicherheits-Requester mit dem Sie das Löschen der
Dateien explizit bestätigen müssen. In den Datei-Requestern ist das Ver-
zeichnis REXX: für Arexx-Scripts voreingestellt.
Beschreibung der einzelnen Funktionen:
[Edit] Dient zum Editieren von Arexx-Scripts. Nach Auswahl eines Scripts
aus dem Datei-Requester wird ein Editor gestartet mit dem man das
im Requester auswählte Script editieren kann. Beim Erststart von
ScriptManager ist als Editor ED voreingestellt. Wenn Sie einen
anderen Editor bevorzugen, können Sie den von Ihnen gewünschten
Editor mit dem Gadget [Change Editor] dauerhaft einstellen.
Wenn Sie im Datei-Requester keine Datei auswählen und statt
[Cancel] [ OK ] drücken, wird der Editor auch gestartet, jedoch
keine Datei geladen.
Noch ein Tip: Der Arexx-Interpreter ist nicht in der Lage Programme
zu laden, in deren Namen Leerzeichen vorkommen. Achten Sie also
beim Speichern Ihrer Arexx-Scripts mit Ihrem Editor darauf, keine
Programmnamen die Leerzeichen enthalten zu vergeben.
[Launch] Mit dieser Funktion können Sie Ihre Arexx-Scripts starten.
Wenn in Ihrem Script ein Fehler auftritt, oder Sie z.B. mit den
Kommandos SAY oder ECHO eine Ausgabe erzeugen, wird ein Fenster
geöffnet in dem die Fehlermeldung bzw. Ihre Ausgabe erscheint. Im
Kopf des Ausgabe-Fensters ist der Name des dazugehörigen Arexx-
Programms eingetragen. Wenn Ihr Arexx- Programm beendet ist und Sie
das Ausgabe-Fenster nicht mehr benötigen, können Sie es mit dem
Close-Gadget in der linken oberen Ecke schließen.
Falls Sie in Ihrem Programm Benutzereingaben anfordern wollen, ist
es zu empfehlen, nach folgendem Beispiel ein eigenes Fenster zu
öffnen:
x = open(outwin,"CON:0/0/400/100/MeinFenster/SMART")
Eingaben können Sie dann mit der readline-Funktion anfordern:
eingabe = readln(outwin)
Für Ausgaben benutzen Sie dann die writeline-Funktion
writeln(outwin,ausgabe)
[Delete] Damit können Sie in Ihrem Script-Verzeichnis aufräumen. In dem
erscheinenden Datei-Requester sind mehrere Dateien auswählbar. Nach
dem Drücken des [ OK ]-Gadgets bekommen Sie zusätzlich einen Sich-
erheits-Requester in dem alle ausgewählten Dateien nochmals aufge-
listet sind. Erst wenn Sie jetzt nochmals [ OK ] drücken, werden die
aufgelisteten Dateien gelöscht. Das Löschen der Dateien kann sowohl
im Datei-Requester als auch im Sicherheits-Requester durch Auswahl
von [Cancel] abgebrochen werden.
[Editor] Beim Erststart des ScriptManagers ist als Editor ED vorein-
gestellt. Wenn Sie einen anderen Editor bevorzugen, können Sie die-
sen mit der Funktion Editor dauerhaft einstellen. Auch das
Wechseln des aktuell eingestellten Editors ist jederzeit möglich.
Nach Anwahl von [Editor] erscheint ein Datei-Requester mit
dem Sie den von Ihnen gewünschten Editor auswählen können. Nach dem
Drücken des [ OK ]-Gadgets wird dieser Editor zukünftig zum Bearbei-
ten Ihrer Scripts für die Funktion [Edit] verwendet.
[Icon] Damit können Sie Ihre Arexx-Scripts mit einem Icon versehen,
damit Sie Ihre Arexx-Programme auch von der Workbench mit einem
Maus-Doppelklick starten können. Wenn Sie das erstellte Icon mit
der Maus einmal anklicken und dann in der Worbench-Titelleiste
"Icons/Information" wählen, werden Sie feststellen, daß als Tool-
Type "CONSOLE=NIL:" eingetragen ist. Das bewirkt, daß das von Rx
beim Script-Start erzeugte Rx_Out-Fenster unterdrückt wird. Wenn
Sie jedoch das Rx_Out-Fenster für Aus- oder Eingaben Ihres Arexx-
Programms benötigen (z.B. Say, Echo, und Pull benutzen dieses Fen-
ster), löschen Sie das Tool-Type.
[VCopy] Mit dieser Funktion haben Sie die Möglichkeit von dem im
erscheinenden Datei-Requester ausgewählten Script eine Versions-
Kopie zu erstellen. Das Script wird mit dem gleichen Namen kopiert
und eine Versionsnummer angehängt (z.B wird "MyScript" nach
"MyScript.1" kopiert). Wenn eine Versionsnummer vorhanden ist wird
diese um eins erhöht. Es werden dabei auf keinen Fall Dateien über-
schrieben. Falls schon eine Datei mit der neuen Versionsnummer vor-
handen ist, wird die Versionsnummer solange erhöht, bis die neue
Version kopiert werden kann ohne eine Datei zu überschreiben.
ResourceManager:
----------------
Mit diesem Programm ist es Ihnen möglich die Arexx-Resourcen einzusehen
und zu verwalten. Alle mit den Show-Funktionen erzeugten Listen werden
zur besseren Orientierung alphabetisch sortiert. Lediglich die Funktion
[Libs] bildet hierbei eine Ausnahme. Die Libraries werden in der
Such-Reihenfolge aufgelistet. Damit kann man bei Libraries mit gleichen
Funktionsnamen nachvollziehen, welche Library benutzt wurde.
Auch das Öffnen und Schließen der Trace-Console (TCO,TCC) wird hier auf
Knopfdruck ermöglicht.
Zusätzliche Information zum Tracing:
Verwenden Sie TS (Tracing im Single-Step) nicht zusammen mit
ArexxManager! Wenn Sie TS starten, gilt der Single-Step-Modus
für alle laufenden Arexx-Programme, also auch für ArexxManager!
Aus diesem Grund sind auch nur TCO und TCC im ArexxManager
implementiert.
Beschreibung der einzelnen Funktionen:
[Trace ON] Einschalten des Trace-Modus (TCO). Es wird eine Trace-Console
erzeugt, auf der mögliche Fehler in Ihren mit dem ScriptManager ge-
starteten Arexx-Programmen ausgegeben werden.
[Trace OFF] Auschalten des Trace-Modus (TCC). Die Trace-Console wird ge-
schlossen. Wenn keine Fehler aus voherigen Programmläufen angezeigt
wurden, schließt sich die Trace-Console sofort. Falls während des
Betriebes der Trace-Console Fehler aufgetreten sind, schließt sich
die Trace-Console erst nach Beendigung der fehlerhaften Arexx-Pro-
gramme.
[Add Lib] Damit lassen sich zusätzliche Arexx-Funktions-Libraries zu der
aktuellen Liste hinzufügen. Es erscheint ein Datei-Requester, der
auf das LIBS:-Verzeichnis voreingestellt ist und Sie dazu auffor-
dert die von Ihnen gewünschte Arexx-Library auszuwählen.
Erst nachdem eine Arexx-Library in der Library-Liste eingetragen
ist, können die Library-Funktionen von Arexx-Programmen benutzt
werden. Dieses entspricht der Arexx-Funktion addlib(). Dabei ist
zu beachten, daß die mit [Add Lib] hinzugefügten Libraries mit dem
Standard-Offset "-30" in die Liste eingetragen werden. Wenn Sie also
eine Library mit einem ungewöhnlichen Offset aufsetzen möchten,
sollten Sie dies entweder mit
call addlib("libraryname",prio,offset,version)
in der ArexxShell bzw. einem Arexx-Programm oder mit RXLIB von der
DOSShell aus tun. Ein falscher Library-Offset kann einen Rechnerab-
sturz verursachen.
Weiterhin gilt es zu bedenken, daß unter Umständen mehrere Arexx-
Libraries gleichlautende Funktionen besitzen können. Das kann zu
Fehlern in Arexx-Programmen führen, die dann beim Aufruf solcher
Funktionen die falsche Library benutzen könnten.
[Rem Lib] Zum Entfernen von Arexx-Libraries aus der Library-Liste.
Auch hierbei erscheint ein Datei-Requester, der das LIBS:-Verzeich-
nis auflistet. Die von Ihnen ausgewählte Library wird nach dem
Drücken von [ OK ] aus der Library-Liste entfernt, sofern Sie dort
eingtragen ist. Die Library wird NICHT im LIBS:-Verzeichnis ge-
löscht, sondern nur aus der sich im Arbeitsspeicher befindlichen
Arexx-Library-Liste herausgenommen. Die apig.library und die
rexxsupport.library lassen sich allerdings nicht entfernen, sie wer-
den vom ArexxManager benutzt.
[Libs] Zeigt die aktuelle Library-Liste. Die Ausgabe ist nach der
Such-Reihenfolge sortiert, d.h. bei gleichlautenden Funktionen in
mehreren Libraries wird die am weitesten oben stehende Library be-
nutzt.
[Clips] Listet die aktuelle Clip-Liste auf.
[Ports] Erzeugt eine Auflistung aller aktuellen Arexx-Ports.
Auch die Ports des ArexxManagers sind in dieser Liste zu finden. Sie
werden benötigt um die Mouseclicks in den Requestern und Fenstern
des ArexxManagers an die laufende Applikation zu senden.
[Files] Listet alle geöffneten logischen Dateien auf.
[Ready] Zeigt eine Liste aller Tasks, die sich im READY-Status befinden.
[Waiting] Erzeugt eine Auflistung der Tasks, die sich im WAITING-Status
befinden.
Nachwort:
=========
Zusätzliche Informationen zu den oben erwähnten und teilweise beschriebenen
Arexx-Funktionen sowie den Arexx-Tools RX TCC TCO und TS des REXXC:-Ver-
zeichnisses finden Sie in Ihrem Handbuch zur Systemsoftware im Abschnitt
"Zusätzliche Dienstprogramme".
Für Bugreports und weitere Anregungen wäre ich sehr dankbar.
Nachstehend meine Adresse:
Karsten Wysocki
An der Mühle 3
38372 Büddenstedt